import { createSSRApp } from 'vue'
import { createPinia } from 'pinia'
import App from './App'

export function createApp() {
  const app = createSSRApp(App)
  const pinia = createPinia()
  
  app.use(pinia)
  
  // 添加全局分享功能
  app.mixin({
    onLoad() {
      // 调用 showShareMenu 显示当前页面的转发按钮
      uni.showShareMenu({
        withShareTicket: true,
        menus: ['shareAppMessage', 'shareTimeline']
      }, (res) => {
        console.log('Share menu shown:', res)
      });
    },
    
    // 分享到朋友圈
    onShareTimeline() {
      // 获取当前页面路径
      const pages = getCurrentPages();
      const currentPage = pages[pages.length - 1];
      const route = currentPage.route || '';
      
      // 如果是游记详情页面，使用游记数据
      if (route.includes('pages/youji/detail')) {
        // 获取详情页面的数据
        const journalData = currentPage.$vm.journalData;
        if (journalData) {
          return {
            title: journalData.title || '精彩游记分享',
            path: `/${route}?journalData=${encodeURIComponent(JSON.stringify(journalData))}`,
            imageUrl: journalData.photos && journalData.photos.length > 0 ? journalData.photos[0] : '/static/share-image.png'
          }
        }
      }
      
      // 默认分享内容
      return {
        title: '文旅小程序 - 探索精彩旅程',
        path: '/pages/index/index',
        imageUrl: '/static/share-image.png'
      }
    },
    
    // 分享给朋友
    onShareAppMessage(res) {
      // 获取当前页面路径
      const pages = getCurrentPages();
      const currentPage = pages[pages.length - 1];
      const route = currentPage.route || '';
      
      // 如果是游记详情页面，使用游记数据
      if (route.includes('pages/youji/detail')) {
        // 获取详情页面的数据
        const journalData = currentPage.$vm.journalData;
        if (journalData) {
          return {
            title: journalData.title || '精彩游记分享',
            desc: journalData.content ? journalData.content.substring(0, 50) + '...' : '快来看看这篇精彩游记',
            path: `/${route}?journalData=${encodeURIComponent(JSON.stringify(journalData))}`,
            imageUrl: journalData.photos && journalData.photos.length > 0 ? journalData.photos[0] : '/static/share-image.jpg'
          }
        }
      }
      
      // 默认分享内容
      return {
        title: 'AI游莒 - 探索精彩旅程',
        path: '/pages/index/index',
        imageUrl: '/static/share-image.jpg',
        desc: '发现美景，记录旅行，分享精彩'
      }
    }
  })
  
  return {
    app
  }
}